package com.hz.house.dao;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

import com.hz.house.bean.entity.PersonCenter;
import com.hz.house.bean.entity.SellManBasicInfo;
import com.hz.house.bean.entity.SellManDays;
import com.hz.house.bean.entity.SellManDynamic;
import com.hz.house.bean.entity.SellmanScoreConsumeRecord;
import com.hz.house.bean.entity.SystemMsg;
import com.hz.house.bean.entity.UcSignRecode;
import com.hz.house.bean.entity.UcXpRecode;
import com.hz.house.bean.entity.UserSign;
import com.hz.house.bean.vo.SellManDynamicVo;

public interface SellManMapperExt {

	void releaseDynamic(SellManDynamic dyn);

    void delDynamic(@Param("id") Integer id,@Param("customerId") Integer customerId);

	SellManDynamicVo queryDynamic(@Param("customerId") Integer customerId, @Param("page") Integer page);

	Integer getTotal(Integer customerId);

	void modifySellMan(SellManBasicInfo pc);

	SellManBasicInfo getBasicInfo(Integer currentUserId);

	Map<String,Object> findLastSign(Integer customerId);

	void modifyXp(UserSign sign);

	void addExpRecode(UcXpRecode rec);

	void addSignRecode(UcSignRecode r);

	Map<String,Object> getLastAndNearSignTime(Integer custormId);

	List<UcSignRecode> querySignRecords(@Param("customerId") Integer customerId,@Param("year") Integer year,@Param("month") Integer month);

	List<SystemMsg> getSystemMsg(@Param("customerId") Integer customerId,@Param("page") Integer page);

	void editMsgRead(@Param("customerId") Integer customerId,@Param("id") Integer id);

	Integer getAllMsgNum(Integer customerId);

	SellManDays getMyScore(Map<String, Object> m);

    List<Integer> getFocusBuildingId(Integer customerId);

	List<Integer> getMySellManFocus(Integer customerId);

	PersonCenter getUserCenter(Integer customerId);

	PersonCenter getSellManCenter(Integer customerId);

	int getFocus(@Param("customerId") Integer currentUserId,@Param("sellManCustomerId") Integer customerId);

	List<SellmanScoreConsumeRecord> queryConsumeRecord(@Param("customerId") Integer customerId,@Param("page") Integer page);

	int getConsumeTotal(Integer customerId);

	Integer getInviteId(String invitePhone);

	List<SellManBasicInfo> getBuildingByName(String name);
}
